home *** CD-ROM | disk | FTP | other *** search
/ The PC-SIG Library 10 / The PC-Sig Library - Shareware for the IBM PC and Compatibles (PC-SIG)(Tenth Edition Disks 1-2804)(1991).iso / PC_SIGCD / 00 / 5 / DISK0050.ZIP / ASCFILTR.BAS < prev    next >
BASIC Source File  |  1982-08-24  |  1KB  |  48 lines

  1. 10 '    FILTERS  NON-ASCII CHARACTERS FROM A FILE
  2. 20 '    USEFUL FOR CLEANING UP NULLS AND CONTROL CHARACTERS FROM A
  3. 30 '    TRANSMITTED FILE.
  4. 40 '                                       RICHARD STECK  820511
  5. 50 '
  6. 60 '
  7. 70 CLOSE
  8. 80 DEFINT A-Z
  9. 90 ON ERR GOTO 470
  10. 100 KEY OFF
  11. 110 CLS:WIDTH 80: LOCATE 12,,1
  12. 120 INPUT "   ENTER NAME OF FILE TO BE FILTERED  "; F1$
  13. 130 PRINT
  14. 140 INPUT "   ENTER DESTINATION FILE NAME        "; F2$
  15. 150 IF F1$ = F2$ THEN GOTO 110
  16. 160 PRINT: PRINT
  17. 170 PRINT TAB(10), "Source file name is: "; TAB(33); F1$
  18. 180 PRINT
  19. 190 PRINT TAB(10), "Destination file name is: ";TAB(33); F2$
  20. 200 PRINT
  21. 210 INPUT " Is that correct(Y/N/Q)?  "; ANS$
  22. 220 IF (LEFT$(ANS$,1) = "Q") OR (LEFT$(ANS$,1) = "q" )  THEN STOP
  23. 230 IF NOT ((LEFT$(ANS$,1) = "Y") OR (LEFT$(ANS$,1) = "y") ) THEN GOTO 160
  24. 240 OPEN F1$ FOR INPUT AS #1
  25. 250 OPEN F2$ FOR OUTPUT AS #2
  26. 260 '
  27. 270 WHILE NOT EOF(1)
  28. 280    LINE INPUT #1,A$
  29. 290 '
  30. 300 PRINT  A$ :  '  DISPLAY STRING
  31. 310    GOSUB 370
  32. 320    PRINT #2,A$
  33. 330 WEND
  34. 340 CLOSE 1,2
  35. 350 STOP
  36. 360 '
  37. 370 '  FILTER OUT NULLS FROM A$
  38. 380 AA$= STRING$(255," ")
  39. 390 J = 1
  40. 400 FOR I = 1 TO LEN(A$)
  41. 410 TEST = ASC(MID$(A$,I,1))
  42. 420 IF TEST < 32 AND (TEST < 7 OR TEST > 13) THEN GOTO 430 ELSE MID$(AA$,J,1) =  MID$(A$,I,1) : J = J + 1
  43. 430 NEXT I
  44. 440 A$ = LEFT$(AA$,J-1)
  45. 450 RETURN
  46. 460 '
  47. 470 PRINT : PRINT "ERROR CONDITION  "; ERR; "  IN LINE NO. "; ERL: PRINT : STOP
  48.